1. Field of the Invention
This invention relates generally to the field of devices for data entry and manipulation in computers, and relates more particularly to an apparatus and method for entering data into a computer and manipulating virtual objects defined by the computer based on the gestures and positions of the hand, or other parts of the body, of an operator.
2. Description of the Prior Art
Input devices for computers include such devices as keyboards, digitizers, joysticks, mice, trackballs, and light pens. One function of these input devices is to position, in two dimensions, a cursor on the display screen of a computer. Once the cursor is positioned at a desired location, the computer typically will be instructed to perform an operation. The processes of positioning the cursor and selecting the operation are discrete operations, since separate motions are required to perform each operation. With a mouse, for example, cursor positioning is accomplished by moving the mouse along a surface, while selection of the operation is accomplished by pushing keys located either on the mouse or on a separate keyboard. Mastering the operation of such input devices is often difficult because the hand movements required to operate the devices do not correspond to the visual feedback presented by the display screen of the computer. Furthermore, the operator""s hand(s) must be removed from the keyboard, positioned on the mouse, then returned to the keyboard.
Glove input devices also have been used to supply data to computers. U.S. Pat. No. 4,414,537, filed Sep. 15, 1981, by G. Grimes and entitled xe2x80x9cDigital Data Entry Glove Interface,xe2x80x9d describes one such glove input device. The Grimes patent discloses a glove with sensors for detecting the flexing of finger joints, sensors for detecting contact between various portions of the hand, and sensors for detecting the orientation of the hand. The Grimes device is used to identify static hand positions representing the characters of the alphabet. Furthermore, the glove is designed to differentiate from one another a fixed number of static shapes representing the letters of the alphabet.
The present invention provides an apparatus and method for manipulating virtual objects defined by a computer according to the gestures, position, and movement of the hand of an operator. Such manipulation includes positioning a cursor or other representation of the hand of the operator with respect to virtual objects defined by the computer. Operations on those virtual objects may then be carried out according to certain gesture specifying movements of the operator""s hand. The virtual objects themselves may be representations of computer input devices such as a joystick, mouse, pen, keyboard, paintbrush or other devices. More generally, the objects may be tools which themselves act on other virtual objects. For example, a virtual steering wheel may be used to drive a simulation of an automobile, or to provide input to a remote system.
The invention includes gesture sensing means coupled to the hand for detecting gesture specifying movements of the hand, such as flexing of the fingers, as well as hand position sensing means for detecting the position of the hand with respect to the display. Signal processing means are provided to receive data from the gesture sensing means and the hand position sensing means to instruct the computer to manipulate the cursor and/or virtual objects according to the movements of the operator""s hand.
In one embodiment of the present invention, the gesture sensing means includes a glove assembly with attached sensors that are responsive to the degree of flex of the fingers of the operator""s hand. These flex sensors are mounted on a flexible printed circuit board and are sandwiched between an inner and an outer glove. A decoding circuit for addressing the sensors is also mounted on the flexible printed circuit board, and is electrically coupled to the sensors through the flexible printed circuit board and to the computer via a detachable cable. The hand position sensing means preferably includes one or more ultrasonic transmitters affixed to the glove assembly, a stationary receiver comprising three separate spaced-apart ultrasonic receiving units, and a control circuit that measures the time delay of pulsed ultrasonic signals from the transmitter to the three receivers. The time delay provides a measure of the spatial position of the operator""s hand. The signal processing means includes interface circuitry for coupling the glove to the host computer, for positioning a hand-shaped cursor on the display screen of the computer according to the position of the operator""s hand, for responding to output signals from the flex sensors, and for manipulating virtual objects defined by the computer according to commands represented by the gestures and movement of the operator""s hand. A database within the host computer can be employed to provide constraints, such as inertia, linkage to other objects, etc., for the objects being manipulated.
The present invention also comprises a computer data entry and manipulation apparatus and method capable of determining the dynamic gestures of an operator""s hand and the spatial position of the hand. As an input device, the present invention is especially well adapted for use with a pictorial or symbolic programming language having a dynamic cursor which corresponds in shape to the shape of the glove and moves on the screen in response to movement of the glove in space. The present invention provides a basis for use of a symbolic programming language in which the physical gestures of the operator""s hand are used to implement conceptually similar and easily recognizable functions or operations on virtual objects displayed on the display screen of the computer.